package com.supplychainapi.service;

import java.util.List;

import com.github.pagehelper.PageInfo;
import com.joindata.inf.common.basic.exceptions.ServiceException;
import com.supplychainapi.model.Tbstaff;
import com.supplychainapi.model.TbstaffExtend;
import com.supplychainapi.param.ColTitle;

public interface ITbstaffService {
	
	/**
	 * 新增员工信息
	 * @param staff
	 * @throws ServiceException
	 */
	public void addEmployeeInfo(Tbstaff staff) throws ServiceException;
	
	/**

	 * 更新员工信息
	 * @param staff
	 */
	public void updateEmployeeInfo(Tbstaff staff) throws ServiceException;
	
	/**
	 * 删除员工信息
	 * @param fsShopGUID
	 * @param fsStaffId
	 */
	public void deleteEmployeeInfo(String fsShopGUID, String fsStaffId)throws ServiceException;
	
	/**
	 * 查询员工列表
	 * @param fsShopGUID 门店GUID
	 * @param keyWord 关键字
	 * @param page 页码
	 * @param pageSize 大小
	 * @return
	 * @throws ServiceException
	 */
	public PageInfo getStaffListInfo(String fsShopGUID,String keyWord,Integer pageNum,Integer pageSize) throws ServiceException;
	
	/**
	 * 统计用户数量
	 * @param param
	 * @return
	 */
	public int count(Tbstaff param);
	
	/**
	 * 标题
	 * @return
	 */
	List<ColTitle> getSchema();
	
	/**
	 * 选取仓库标题
	 * @return
	 */
	List<ColTitle> getChoiceSchema();
	
	/**
	 * 选取员工列表
	 * @param fsShopGUID
	 * @param keyWord
	 * @param pageNum
	 * @param pageSize
	 * @return
	 */
	public PageInfo getChoiceStaffListInfo(String fsShopGUID, String keyWord, Integer pageNum,
			Integer pageSize)throws ServiceException;
	
	/**
	 * 查询员工详情信息
	 * @param fsShopGUID
	 * @param fsStaffId
	 * @return
	 * @throws ServiceException
	 */
	public TbstaffExtend getStaffDetailsInfo(String fsShopGUID, String fsStaffId)throws ServiceException;


	
	
}
